Pragmatics of Type-Directed Partial Evaluation
نویسنده
چکیده
Type directed partial evaluation stems from the residualiz ation of arbitrary static values in dynamic contexts given their type Its algorithm coincides with the one for coercing a subtype value into a supertype value which itself coincides with the one of normalization in the calculus Type directed partial evaluation is thus used to specialize compiled closed programs given their type Since Similix let insertion is a cornerstone of partial evaluators for call by value procedural programs with computational e ects It prevents the duplication of residual computations and more generally maintains the order of dynamic side e ects in residual programs This article describes the extension of type directed partial evaluation to insert residual let expressions This extension requires the user to annot ate arrow types with e ect information It is achieved by delimiting and abstracting control comparably to continuation based specialization in direct style It enables type directed partial evaluation of e ectful pro grams e g a de nitional lambda interpreter for an imperative language that are in direct style The residual programs are in A normal form
منابع مشابه
Online Type-Directed Partial Evaluation for Dynamically-Typed Languages∗
This article presents an alternative method of type-directed partial evaluation, which is simpler and more efficient than previous methods. Unlike previous methods, it is straightforwardly applicable to functional languages with various powerful type systems. As an extreme instance, this article mainly deals with a dynamically-typed functional language like Scheme. The key idea is to extend pri...
متن کاملMemoization in Type-Directed Partial Evaluation
We use a code generator—type-directed partial evaluation— to verify conversions between isomorphic types, or more precisely to verify that a composite function is the identity function at some complicated type. A typed functional language such as ML provides a natural support to express the functions and type-directed partial evaluation provides a convenient setting to obtain the normal form of...
متن کاملTwo Flavors of Offline Partial Evaluation
Type-directed partial evaluation is a new approach to program specialization for functional programming languages. Its merits with respect to the traditional offline partial evaluation approach have not yet been fully explored. We present a comparison of type-directed partial evaluation with standard offline partial evaluation in both a qualitative and quantitative way. For the latter we use im...
متن کاملTwo Flavors of Ooine Partial Evaluation
Type-directed partial evaluation is a new approach to program specialization for functional programming languages. Its merits with respect to the traditional ooine partial evaluation approach have not yet been fully explored. We present a comparison of type-directed partial evaluation with standard ooine partial evaluation in both a qualitative and quantitative way. For the latter we use implem...
متن کاملPragmatic Aspects of Type-Directed Partial Evaluation
Type-directed partial evaluation stems from the residualization of static values in dynamic contexts, given their type and the type of their free variables. Its algorithm coincides with the algorithm for coercing a subtype value into a supertype value, which itself coincides with Berger and Schwichtenberg’s normalization algorithm for the simply typed λ-calculus. Type-directed partial evaluatio...
متن کاملذخیره در منابع من
با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید
عنوان ژورنال:
دوره شماره
صفحات -
تاریخ انتشار 1996